package com.teach.order.model.po;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
/**
 * <p>
 * 订单表
 * </p>
 *
 * @author hzz
 * @since 2020-03-25
 */
@JsonInclude(JsonInclude.Include.NON_NULL)
@ApiModel(value="Orders对象", description="订单表")
public class Orders implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "id")
    @JsonProperty("id")
    @TableId("id")
    private String id;

    @ApiModelProperty(value = "订单类型 00普通 01提现 03退款")
    @JsonProperty("type")
    @TableField("type")
    private String type;

    @ApiModelProperty(value = "店铺id")
    @JsonProperty("merchant_id")
    @TableField("merchant_id")
    private String merchantId;

    @ApiModelProperty(value = "订单状态 00已下单 01已支付 n02已取消 03已核销 04退款中 05已退款")
    @JsonProperty("status")
    @TableField("status")
    private String status;

    @ApiModelProperty(value = "前端流水号")
    @JsonProperty("ssn")
    @TableField("ssn")
    private String ssn;

    @ApiModelProperty(value = "操作人id")
    @JsonProperty("operator_id")
    @TableField("operator_id")
    private String operatorId;

    @ApiModelProperty(value = "支付人id")
    @JsonProperty("payassociator_id")
    @TableField("payassociator_id")
    private String payassociatorId;

    @ApiModelProperty(value = "订单金额")
    @JsonProperty("amount")
    @TableField("amount")
    private BigDecimal amount;

    @ApiModelProperty(value = "优惠金额")
    @JsonProperty("discount")
    @TableField("discount")
    private BigDecimal discount;

    @ApiModelProperty(value = "核销码")
    @JsonProperty("verification_code")
    @TableField("verification_code")
    private String verificationCode;

    @ApiModelProperty(value = "核销时间")
    @JsonProperty("verification_time")
    @TableField("verification_time")
    private String verificationTime;

    @ApiModelProperty(value = "预计到达时间")
    @JsonProperty("arrive_time")
    @TableField("arrive_time")
    private String arriveTime;

    @ApiModelProperty(value = "姓名")
    @JsonProperty("receiver_name")
    @TableField("receiver_name")
    private String receiverName;

    @ApiModelProperty(value = "手机号")
    @JsonProperty("receiver_mobile")
    @TableField("receiver_mobile")
    private String receiverMobile;

    @ApiModelProperty(value = "消耗积分数")
    @JsonProperty("consume_points")
    @TableField("consume_points")
    private Integer consumePoints;

    @ApiModelProperty(value = "更新时间")
    @JsonProperty("update_time")
    @TableField("update_time")
    private LocalDateTime updateTime;

    @ApiModelProperty(value = "创建时间")
    @JsonProperty("create_time")
    @TableField("create_time")
    private LocalDateTime createTime;

    @ApiModelProperty(value = "逻辑删除1")
    @JsonProperty("state")
    @TableField("state")
    @TableLogic
    private String state;


    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getMerchantId() {
        return merchantId;
    }

    public void setMerchantId(String merchantId) {
        this.merchantId = merchantId;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getSsn() {
        return ssn;
    }

    public void setSsn(String ssn) {
        this.ssn = ssn;
    }

    public String getOperatorId() {
        return operatorId;
    }

    public void setOperatorId(String operatorId) {
        this.operatorId = operatorId;
    }

    public String getPayassociatorId() {
        return payassociatorId;
    }

    public void setPayassociatorId(String payassociatorId) {
        this.payassociatorId = payassociatorId;
    }

    public BigDecimal getAmount() {
        return amount;
    }

    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }

    public BigDecimal getDiscount() {
        return discount;
    }

    public void setDiscount(BigDecimal discount) {
        this.discount = discount;
    }

    public String getVerificationCode() {
        return verificationCode;
    }

    public void setVerificationCode(String verificationCode) {
        this.verificationCode = verificationCode;
    }

    public String getVerificationTime() {
        return verificationTime;
    }

    public void setVerificationTime(String verificationTime) {
        this.verificationTime = verificationTime;
    }

    public String getArriveTime() {
        return arriveTime;
    }

    public void setArriveTime(String arriveTime) {
        this.arriveTime = arriveTime;
    }

    public String getReceiverName() {
        return receiverName;
    }

    public void setReceiverName(String receiverName) {
        this.receiverName = receiverName;
    }

    public String getReceiverMobile() {
        return receiverMobile;
    }

    public void setReceiverMobile(String receiverMobile) {
        this.receiverMobile = receiverMobile;
    }

    public Integer getConsumePoints() {
        return consumePoints;
    }

    public void setConsumePoints(Integer consumePoints) {
        this.consumePoints = consumePoints;
    }

    public LocalDateTime getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(LocalDateTime updateTime) {
        this.updateTime = updateTime;
    }

    public LocalDateTime getCreateTime() {
        return createTime;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }

    public String getState() {
        return state;
    }

    public void setState(String state) {
        this.state = state;
    }

    @Override
    public String toString() {
        return "Orders{" +
        "id=" + id +
        ", type=" + type +
        ", merchantId=" + merchantId +
        ", status=" + status +
        ", ssn=" + ssn +
        ", operatorId=" + operatorId +
        ", payassociatorId=" + payassociatorId +
        ", amount=" + amount +
        ", discount=" + discount +
        ", verificationCode=" + verificationCode +
        ", verificationTime=" + verificationTime +
        ", arriveTime=" + arriveTime +
        ", receiverName=" + receiverName +
        ", receiverMobile=" + receiverMobile +
        ", consumePoints=" + consumePoints +
        ", updateTime=" + updateTime +
        ", createTime=" + createTime +
        ", state=" + state +
        "}";
    }
}
